# Query application data with filters

Retrieves application data entries based on filter criteria. Can filter by data type, tags (multiple tags are AND-ed), and owner. The user must have read permissions for the specified owner if filtering by owner. Returns all matching entries for the application. Without filters, returns all data the user has permission to access.

Endpoint: GET /api/v1/apps/{appId}/data
Version: 1.0
Security: header

## Path parameters:

  - `appId` (string, required)
    Application ID to query data for. Must be a valid APP type TypeId.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

## Query parameters:

  - `owner` (string,null)
    Filter by owner ID (user, group, user:group, or 'platform'). Requires read permission.

  - `tags` (array)
    Filter by tags. Comma-separated list. Returns entries that have ALL specified tags.

  - `type` (string,null)
    Filter by data type. Returns only entries with this exact type.

## Response 200 fields (application/json):

  - `id` (string, required)
    Unique identifier for the app data
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `applicationId` (string,null)
    Optional application ID that this data belongs to
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `ownerId` (string, required)
    Owner identifier of the data. Can be a user ID, group ID, user-in-group format userId:groupId, or 'platform'
    Example: "us_01hq8c8em5hj1vr2f4h1t9db9q"

  - `type` (string, required)
    Type identifier for categorizing the data
    Example: "user_profile"

  - `tags` (array,null)
    Optional list of tags for additional categorization
    Example: ["personal","profile"]

  - `data` (string, required)
    JSON string containing the actual data payload
    Example: "{\"name\": \"John Doe\", \"bio\": \"Developer\"}"

  - `createdAt` (string, required)
    Timestamp when the data was created
    Example: "2022-03-10T16:15:50Z"

  - `updatedAt` (string, required)
    Timestamp when the data was last updated
    Example: "2022-03-10T16:15:50Z"

## Response 401 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation

## Response 403 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation

## Response 404 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation


